package com.hyt.it.ogt.kq.service.bm.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hyt.it.ogt.kq.service.bm.model.entity.ProjectSubjectAreaLimit;

/**
 * <p>
 * 报名项目科目区域额度限制 服务类
 * </p>
 *
 * @author huangwu
 * @since 2023-08-18
 */
public interface IProjectSubjectAreaLimitService extends IService<ProjectSubjectAreaLimit> {
    
    /****
     * 检查是否超额
     * @param subjectId 科目Id
     * @param bmArea 报名区域Id
     * @param needAddSize 需要添加的数量
     * @return
     */
    Boolean checkExcessBySubjectIdAndArea(String projectId, String studentId, String subjectId, String bmAreaCollId, String bmArea);
    
    
    /****
     * 
     * 查询区域限额配置
     * @param projectId
     * @param subjectId
     * @param bmAreaId
     * @return
     */
    ProjectSubjectAreaLimit getLimit(String projectId, String subjectId, String bmAreaId);


    /**
     * 校验报名项目科目是否配置区域限额
     * @param projectId
     * @param studentId
     * @param subjectId
     * @return
     */
    Boolean checkSubjectConfigLimit(String projectId, String subjectId);
	
}
